home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Celestin Apprentice 5
/
Apprentice-Release5.iso
/
Source Code
/
Libraries
/
DCLAP 6d
/
dclap6d
/
corelib
/
ncbimain.h
< prev
next >
Wrap
Text File
|
1996-07-05
|
4KB
|
110 lines
/* ncbimain.h
* ===========================================================================
*
* PUBLIC DOMAIN NOTICE
* National Center for Biotechnology Information
*
* This software/database is a "United States Government Work" under the
* terms of the United States Copyright Act. It was written as part of
* the author's official duties as a United States Government employee and
* thus cannot be copyrighted. This software/database is freely available
* to the public for use. The National Library of Medicine and the U.S.
* Government have not placed any restriction on its use or reproduction.
*
* Although all reasonable efforts have been taken to ensure the accuracy
* and reliability of the software and data, the NLM and the U.S.
* Government do not and cannot warrant the performance or results that
* may be obtained by using this software or data. The NLM and the U.S.
* Government disclaim all warranties, express or implied, including
* warranties of performance, merchantability or fitness for any particular
* purpose.
*
* Please cite the author in any work or product based on this material.
*
* ===========================================================================
*
* File Name: ncbimain.h
*
* Author: Gish, Kans, Ostell, Schuler
*
* Version Creation Date: 7/7/91
*
* $Revision: 2.2 $
*
* File Description:
* prototypes for portable string routines
*
* Modifications:
* --------------------------------------------------------------------------
* Date Name Description of modification
* ------- ---------- -----------------------------------------------------
* 7/7/91 Kans Multiple configuration files, get and set functions
* 04-15-93 Schuler Changed _cdecl to LIBCALL
*
*
* ==========================================================================
*/
#ifndef _NCBIMAIN_
#define _NCBIMAIN_
#ifdef __cplusplus
extern "C" {
#endif
typedef struct mainargs {
char *prompt; /* prompt for field */
char *defaultvalue; /* default */
char *from; /* range or datalink type */
char *to;
Nlm_Boolean optional;
Nlm_Char tag; /* argument on command line */
Nlm_Int1 type; /* type of value */
Nlm_FloatHi floatvalue;
Nlm_Int4 intvalue;
CharPtr strvalue;
} Nlm_Arg, * Nlm_ArgPtr; /* (*) not PNTR for MS Windows */
/* type is:
0 = not set (invalid)
1 = Boolean
2 = Int
3 = Float
4 = String
5 = file in
6 = file out
7 = datalink input (type in from)
8 = datalink output
*/
#define Args Nlm_Arg
#define ArgPtr Nlm_ArgPtr
#define ARG_BOOLEAN 1
#define ARG_INT 2
#define ARG_FLOAT 3
#define ARG_STRING 4
#define ARG_FILE_IN 5
#define ARG_FILE_OUT 6
#define ARG_DATA_IN 7
#define ARG_DATA_OUT 8
extern Nlm_Int2 Nlm_Main PROTO((void));
extern Nlm_Boolean Nlm_GetArgs PROTO((Nlm_CharPtr progname, Nlm_Int2 numargs, Nlm_ArgPtr ap));
extern Nlm_Boolean LIBCALL Nlm_FindPath PROTO((Nlm_CharPtr file, Nlm_CharPtr section, Nlm_CharPtr type, Nlm_CharPtr buf, Nlm_Int2 buflen));
extern Nlm_Int2 LIBCALL Nlm_GetAppParam PROTO((Nlm_CharPtr file, Nlm_CharPtr section, Nlm_CharPtr type, Nlm_CharPtr dflt, Nlm_CharPtr buf, Nlm_Int2 buflen));
extern Nlm_Boolean LIBCALL Nlm_SetAppParam PROTO((Nlm_CharPtr file, Nlm_CharPtr section, Nlm_CharPtr type, Nlm_CharPtr value));
extern Nlm_Boolean LIBCALL Nlm_TransientSetAppParam PROTO((Nlm_CharPtr file, Nlm_CharPtr section, Nlm_CharPtr type, Nlm_CharPtr value));
extern void LIBCALL Nlm_FreeConfigStruct PROTO((void));
#define Main Nlm_Main
#define GetArgs Nlm_GetArgs
#define FindPath Nlm_FindPath
#define GetAppParam Nlm_GetAppParam
#define SetAppParam Nlm_SetAppParam
#define TransientSetAppParam Nlm_TransientSetAppParam
#define FreeConfigStruct Nlm_FreeConfigStruct
#ifdef __cplusplus
}
#endif
#endif